<?

/*
*
*   Excalibur Content Management System
*   Copyright © 2008 Egor "Sontan" Kuryanovich
*
*   Based on Explay Engine v2.0 by Golovdinov Alexander
*
*   Official site: www.excms.ru
*   Contact e-mail: support@excms.ru
*
*   GNU General Public License original source:
*   http://www.gnu.org/licenses/gpl-3.0.html
*
*/

if ($EXCMS != "work") {
	header ("Location: ../../index.php");
	exit;
}

$id = $_GET['id'];

if ($_GET['delete'] == "true" && isset($_GET['id'])) {
	$delete = @mysql_query ("DELETE FROM ".DB_PEREFIX."_panels WHERE panel_id = '$id'");
	if ($delete) site_message ("Панель удалена");
	else site_error ("Ошибка БД или нет такой записи");
}
if ($_GET['mod'] == "off" && isset($_GET['id'])) {
	$update = @mysql_query ("UPDATE ".DB_PEREFIX."_panels SET panel_status = 'off' WHERE panel_id = '$id'");
	if ($update) site_message ("Панель отключена");
	else site_error ("Ошибка БД или нет такой записи");
}
if ($_GET['mod'] == "turn" && isset($_GET['id'])) {
	$update = @mysql_query ("UPDATE ".DB_PEREFIX."_panels SET panel_status = 'on' WHERE panel_id = '$id'");
	if ($update) site_message ("Панель включена");
	else site_error ("Ошибка БД или нет такой записи");
}
if ($_GET['save'] == "true") {
	$header = $_POST['header'];
	$html = $_POST['html'];
	$group = $_POST['group'];
	$align = $_POST['align'];
	$pages = $_POST['pages'];
	$file = $_POST['file'];
	if ($_POST['days'] != "") $days = $_POST['days'];
	else $days = 0;
	if ($_POST['table'] == "use") $table = "use";
	else $table = 'off';
	$status = $_POST['status'];
	if ($header != "") {
			$inspan = @mysql_query ("INSERT INTO ".DB_PEREFIX."_panels VALUES (0, '$header', '$html', '$align', '$pages', '$group', '$days', '".time()."', '$status', '$table', '$file')");
			if ($inspan) site_message ("Панель добавлена");
			else site_error ("Ошибка БД");
		}
	else site_error ("Не заполнено одно из полей<br><a href='javascript:history.back();'><b>Назад</b></a>");
}
if ($_GET['save'] == "edit_save") {
	$tid = $_POST['the_id'];
	$header = $_POST['header'];
	$html = $_POST['html'];
	$group = $_POST['group'];
	$align = $_POST['align'];
	$pages = $_POST['pages'];
	$file = $_POST['file'];
	if ($_POST['days'] != "") $days = $_POST['days'];
	else $days = 0;
	if ($_POST['table'] == "use") $table = "use";
	else $table = 'off';
	$status = $_POST['status'];;
	if ($header != "" && $tid != "" && ($html != "" || $file != "")) {
		$updpan = @mysql_query ("UPDATE ".DB_PEREFIX."_panels SET
			panel_header = '$header',
			panel_body = '$html',
			panel_align = '$align',
			panel_pages = '$pages',
			panel_group = '$group',
			panel_day = '$days',
			panel_status = '$status',
			panel_table = '$table',
			panel_file = '$file' WHERE panel_id = '$tid'");
		if ($updpan) site_message ("Панель изменена");
		else site_error ("Ошибка БД");
	}
	else site_error ("Не заполнено одно из полей");
}
if (!isset($_GET['act'])) {
	print '<ul id="top_nav"><li class="sel"><a href="admin.php">Панель администратора</a></li><li>Управление панелями</li></ul>';
	
	simple_table ("[ <a href='admin.php?do=panels&act=add'>добавить панель</a> ]");
	print "\n<script>document.title='Управление панелями - ".$SITE['site_name']."';</script>";
	$gpan = @mysql_query ("SELECT * FROM ".DB_PEREFIX."_panels");
	if ($gpan) {
		$pan_tr = "";
		while ($pan = mysql_fetch_array ($gpan)) {
			if ($pan['panel_group'] == "all") $group = "Все";
			if ($pan['panel_group'] == "register") $group = "Зарегистр.";
			if ($pan['panel_align'] == "header") $align = "Верх сайта";
			if ($pan['panel_align'] == "top") $align = "Верх";
			if ($pan['panel_align'] == "bottom") $align = "Низ";
			if ($pan['panel_pages'] == "all") $pages = "Все";
			elseif ($pan['panel_pages'] == "start") $pages = "Старт.";
			else $pages = $pan['panel_pages'];
			if ($pan['panel_day'] == "" || $pan['panel_day'] == 0) $days = "Неогранич.";
			else {
				$day = $pan['panel_day'];
				$ost = (($pan['panel_date'] + ($day * 86400)) - time()) / 86400;
				$ost = sprintf("%.0f", $ost);
				$days = "$day ($ost)";
			}
			if ($days < 0) $days = "Остановлен";
			if ($pan['panel_status'] == "on") { $color = ""; $status = "[ <a href='admin.php?do=panels&mod=off&id=".$pan['panel_id']."'>Выключить</a> ]"; $img = "<img src='images/work_on.gif' border=0 align=absmiddle title='Панель активна'> "; }
			if ($pan['panel_status'] == "off") { $color = _DARK_TR_; $status = "[ <a href='admin.php?do=panels&mod=turn&id=".$pan['panel_id']."'>Включить</a> ]"; $img = "<img src='images/work_on.gif' border=0 align=absmiddle title='Панель отключена'> "; }
			$pan_tr .= "\n<tr bgcolor=$color><td  class=ad_tr>$img".$pan['panel_header']."</a></td><td  class=ad_tr><center>$align</td><td class=ad_tr><center>$group</td><td class=ad_tr><center>$pages</td><td class=ad_tr><center>$days</td><td class=ad_tr><center>$status</td><td class=ad_tr><center><a href='admin.php?do=panels&act=edit&id=".$pan['panel_id']."'><img src='images/edit.gif' border=0 alt='Редактировать'></a><a href='javascript:delete_(\"admin.php?do=panels&delete=true&id=".$pan['panel_id']."\");'><img src='images/cut.gif' border=0 alt='Удалить'></a></td></tr>";
		}
		$pan_table = "\n<table class=body_table align=center width='100%' cellspacing='0' cellpadding='3'>
		<tr><td class=top_header_name><center><b>Заголовок</b></td><td class=top_header_name><center><b>Положение</b></td><td class=top_header_name><center><b>Группа</b></td><td class=top_header_name><center><b>Страницы</b></td><td class=top_header_name><center><b>Дни</b></td><td class=top_header_name><center><b>Статус</b></td><td class=top_header_name><center><b>Опции</b></td></tr>$pan_tr
		\n</table><script>function delete_ (url_) {
		if (window.confirm('Вы действительно хотите удалить панель?') == true) document.location.href = url_;
		}</script>";
		past_table ("Управление панелями", $pan_table);
	}
	else site_error ("Ошибка БД");
}
if ($_GET['act'] == "add") {
	print '<ul id="top_nav"><li class="sel"><a href="admin.php">Панель администратора</a></li><li><a href="admin.php?do=panels">Управление панелями</a></li><li>Добавление новой панели</li></ul>';
	
	print "\n<script>document.title='Добавление панели - ".$SITE['site_name']."';</script>";
	add_panel ("do=panels&save=true", "", $_POST['header'], "top", "start", "all", $_POST['html'], "0", "on", "", "", "use", $_POST['file']);
	come_back ("управлению панелями", "admin.php?do=panels");
}
if ($_GET['act'] == "edit" && isset($_GET['id'])) {
	print '<ul id="top_nav"><li class="sel"><a href="admin.php">Панель администратора</a></li><li><a href="admin.php?do=panels">Управление панелями</a></li><li>Изменение панели</li></ul>';
	
	simple_table ("[ <a href='admin.php?do=panels&act=add'>добавить панель</a> ]");
	print "\n<script>document.title='Исправление панели - ".$SITE['site_name']."';</script>";
	$select = @mysql_query ("SELECT * FROM ".DB_PEREFIX."_panels WHERE panel_id = '$id'");
	if ($select) {
		$pan = mysql_fetch_array ($select);
		add_panel ("do=panels&save=edit_save", $id, $pan['panel_header'], $pan['panel_align'], $pan['panel_pages'], $pan['panel_group'], $pan['panel_body'], $pan['panel_day'], $pan['panel_status'], "edit", $pan['panel_date'], $pan['panel_table'], $pan['panel_file']);
	}
	else site_error ("Ошибка БД или нет такой записи");	
	come_back ("управлению панелями", "admin.php?do=panels");
}

come_back ("панели администратора", "admin.php");

function add_panel ($act, $id, $header, $align, $pages, $group, $body, $days, $status, $action, $time, $table, $file) {

	if ($group == "register") $sel2 = "selected";
	
	if ($align == "top") $sel_2 = "selected";
	if ($align == "bottom") $sel_3 = "selected";

	if ($pages == "start") $sel__2 = "selected";
	if ($pages == "modules") $sel__3 = "selected";

	if ($status == "off") $selected_2 = "selected";
	
	if ($table == "use") $table_c = "checked";
	if ($action == "edit") $time_ = "\n<tr><td>Панель была создана:</td><td>".date(j." ".F." ".Y." в ".H.":".i,$time)."</td></tr>";
	$get_modules = @mysql_query("SELECT module_name FROM ".DB_PEREFIX."_modules");
	$form .= "\n\n<form style='margin:0px' action='admin.php?$act' method='post' name='record'>
	<input type=hidden name=the_id value=$id>
	<table class=main_text width='100%' cellspacing='0' cellpadding='3'>
	<tr><td width='25%'>Заголовок: </td><td><input type='text' name='header' style='width:200px' class='form' value='$header'></td></tr>
	<tr><td>Файл: </td><td><input type='text' name='file' style='width:200px' class='form' value='$file'></td></tr>
	<tr><td valign=top>HTML - код: </td><td><textarea class=form name=html rows=18 style=\"width:100%\">$body</textarea></td></tr>
	<tr><td>Группа: </td><td><select name='group' class=form><option value='all' $sel1>Все</option><option value='register' $sel2>Зарегистрированные</option></select></td></tr>
	<tr><td>Положение: </td><td><select name='align' class=form><option value='top' $sel_2>Верх</option><option value='bottom' $sel_3>Низ</option></select></td></tr>
	<tr><td>Страницы/Модули: </td><td><select name='pages' class=form><option value='start' $sel__2>Главная</option><option value='modules' $sel__3>Модули</option><option value='all' $sel__1>Все</option>";
	while ($mod = @mysql_fetch_array($get_modules)) {
		if ($pages == $mod['module_name']) $form .= "\n<option value='".$mod['module_name']."' selected>".$mod['module_name']."</option>";
		elseif ($pages != $mod['module_name']) $form .= "\n<option value='".$mod['module_name']."'>".$mod['module_name']."</option>";
	}
	$form .= "</select></td></tr>
	<tr><td>Статус: </td><td><select name='status' class=form><option value='on' $selected>Включена</option><option value='off' $selected_2>Скрыта</option></select></td></tr>
	<tr><td>Использовать таблицу: </td><td><input type='checkbox' name='table' value='use' $table_c> <a href='javascript:void(0)' onmouseover=\"return overlib('При отключении этого параметра будет выведен чистый HTML-код без окружающей таблицы.', BELOW, RIGHT);\" onmouseout=\"return nd();\">?</a></td></tr>
	<tr><td>Время жизни (в днях): </td><td><input type='text' name='days' style='width:50px' class='form' value='$days'> <a href='javascript:void(0)' onmouseover=\"return overlib('Пустое значени или ноль - неограниченное время.', BELOW, RIGHT);\" onmouseout=\"return nd();\">?</a></td></tr>$time_
	<tr><td colspan='2'><span class=\"important_button\"><input style='width:240px' type='submit' name=post value='Сохранить' class='button'></span> <input onclick='javascript:window.open(\"upload.php\", \"\", \"width=500 height=300 scrollbars\");' type='button' value='Загрузить что-нибудь' class='button'></td></tr>
	</table></form>";
	past_table ("Добавление/Изменение панели", $form);
}

?>
